home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / lists / gem / l_0799 / 511 < prev    next >
Encoding:
Internet Message Format  |  1994-08-27  |  8.3 KB

  1. From: khollis@bitsink.gbdata.com (K. Hollis)
  2. Subject: Dialog Box Proposal Part 1
  3. Date: Sat, 25 Jun 1994 15:31:24 +0000 (GMT)
  4. Mime-Version: 1.0
  5. Precedence: bulk
  6.  
  7. ---  Forgive me...  This was edited on an Atari ST, and I have newlines... ---
  8. --- Vote on these, or make changes as you wish.  Remember, LTMF-2 will have --
  9. --- all proposals herein. ---
  10. ::: Ken Hollis / Bitgate Software / Developer of Let 'em Fly Revision II   :::
  11.  
  12.  
  13.                    ** Dialog box look and feel proposal **
  14.               ** Proposal by Ken Hollis  of Bitgate Software **
  15.  
  16.                                >>>  PART 1  <<<
  17.  
  18.  (Some of these  proposals for the look-and-feel may be a  practical idea,
  19.   some may not.   Please,  feel free to vote on any of these,  or BASH any
  20.   ideas that you do not agree with.   I will eventually compile all of the
  21.   ideas and combine them in Let 'em Fly II.)
  22.  
  23.  Just for the record, LTMF-2 will be GEM List Level #1 Compliant.
  24.  
  25.  -------------------------------------------------------------------------
  26.  
  27.  Handling sliders:
  28.  """""""""""""""""
  29.  Sliders MUST be handled in a redraw-as-you-drag (or active-drawing)
  30.  method in order to provide full functionality.  Any sliders that are
  31.  designed to display information (such as scaling percentages, etc) should
  32.  be displayed either within the slider bar, or to the direct right or
  33.  left of the slider track.  Sliders that take time to draw information
  34.  based on their position must be ghost-drag type.
  35.  
  36.  -------------------------------------------------------------------------
  37.  
  38.  Handling buttons:
  39.  """""""""""""""""
  40.  Hotkeys must be identified by either an underline, an inverted character,
  41.  or as a reddened (or otherwise) character.  The hotkey button must be
  42.  selectable by keyboard with the ALT- key, and MUST be an alphanumeric
  43.  character (ie. 0-9, A-Z).  The activation characters MUST be in uppercase
  44.  to avoid confusion.  Any characters that are typed with the ALT-key
  45.  combination (unless in an editable field) are automatically converted to
  46.  uppercase, and checked for the hotkey.
  47.  
  48.  If an editable text field is in the dialog box, the only way the hotkey
  49.  can be accessed is by pressing ALT- and the key.  If no editable fields
  50.  are in the dialog box, simply have button activation by pressing the
  51.  activation character; DO NOT require an ALT- key combination.
  52.  
  53.  -------------------------------------------------------------------------
  54.  
  55.  Editable objects:
  56.  """""""""""""""""
  57.  If the mouse is placed over an editable text field, the mouse MUST change
  58.  to a TEXT CURSOR while the mouse is over it.  It must be changed back to
  59.  its original form when moved away.
  60.  
  61.  The text cursor must be manipulated in the following way:
  62.  
  63.       - Arrow-UP      : Moves the text cursor to the previous field.  If
  64.                         it is at the first editable field, wrap around to
  65.                         the last editable field.
  66.         + SHIFT       : Move to the first editable field.  If already at
  67.                         the first editable field, move the text cursor to
  68.                         the start of the editable field, regardless of any
  69.                         text already in the field.
  70.         + SHIFT-CTRL  : Insert text from clipboard at its current
  71.                         position, then move the counter up one.  Press
  72.                         again to get the next previously entered string.
  73.       - Arrow-DOWN    : Moves the text cursor to the next field.  If it is
  74.                         at the last editable field, wrap around to the
  75.                         first editable field.
  76.         + SHIFT       : Same as up but to the last field.
  77.         + SHIFT-CTRL  : Same as SHIFT-CTRL-ARROW-UP, but in the opposite
  78.                         direction, respectively.
  79.       - Arrow-LEFT    : Move the text cursor one to the left, or scroll
  80.                         extended length of text to the left.
  81.         + SHIFT       : Move text cursor to the beginning of the text in
  82.                         an editable field.
  83.         + CONTROL     : Move text cursor to the beginning of a word before
  84.                         its immediate position.
  85.       - Arrow-RIGHT   : Same as left, but move right respectively.
  86.       - Insert        : Toggle insert/overwrite mode (change cursor too.)
  87.         + SHIFT       : Bring up a character table to select characters to
  88.                         input into the editable field.
  89.       - ClrHome       : Acts exactly the same as SHIFT-ARROW-UP.
  90.         + SHIFT       : Acts exactly the same as SHIFT-ARROW-DOWN.
  91.         + CONTROL     : Clears out all editable text fields.
  92.       - Delete        : Delete character in front of cursor.
  93.         + LSHIFT      : Delete all text to left of cursor.
  94.         + RSHIFT      : Delete all text to right of cursor.
  95.         + L&RSHIFT    : Delete entire editable field.  (Same as [ESC])
  96.  
  97.  -- Level 1 Compliant listing (with modifications where needed) --
  98.  
  99.  < Clipboard functions >
  100.       - CTRL-C        : Copy text to clipboard, don't clear out field.
  101.       - CTRL-V        : Paste last copied or cut item back.
  102.       - CTRL-X        : Cut text to clipboard, and clear out the field.
  103.       - CTRL-UNDO     : Clear/empty out clipboard information.
  104.  
  105.  < Extended editing >
  106.       - CTRL-BS       : Delete word to the left of cursor.
  107.       - CTRL-DELETE   : Delete word to the right of cursor.
  108.       - CTRL-Y        : Delete/Clear out editable field.
  109.       - ESC           : Same as CTRL-Y.
  110.       - SHIFT-CTRL-Z  : Same as SHIFT-INSERT.
  111.  
  112.  -------------------------------------------------------------------------
  113.  
  114.  Identifying clipboard location:
  115.  """""""""""""""""""""""""""""""
  116.  Instead of having the clipboard at a set place (like U:\CLIP or whatever)
  117.  why not have it set in an environmental variable?  I propose that the
  118.  following four environmental variables be reserved for clipboard
  119.  directory locations:
  120.  
  121.  CLIPBRD, SCRAPDIR     -- These are standards to GEM
  122.  TMP, TEMP             -- These are standards to Unix/Linux
  123.  
  124.  -------------------------------------------------------------------------
  125.  
  126.  Extended Object Types:
  127.  """"""""""""""""""""""
  128.  Atari Corp. has announced in the MultiTOS documentation that it fully
  129.  supports and authorizes all usage of InterFace Extended Object Types.
  130.  With that in mind, why not use their indices?  The following is a list
  131.  of their indices, and some extras that I have used in my library called
  132.  "WinLIB PRO".  The list is as follows (with specifications on how the
  133.  objects should be setup):
  134.  
  135.  FLYING (17)    - This lets you move the dialog box anywhere on the
  136.                   screen.  Objects should be TOUCHEXIT.
  137.  CUSTOM (18)    - This specifies objects that have "X" when selected, or
  138.                   a filled circle for radio buttons.  "X" objects should
  139.                   be SELECTABLE (can be any type), and CIRCLE buttons
  140.                   must be RADIO BUTTON type.
  141.  UNDERLINE (19) - This specifies an underlined object.  Double underline
  142.                   should be specified with OBFLAGS15.  Objects can be
  143.                   any type except SELECTABLE or TOUCHEXIT.
  144.  SCALE (20)     - This scales an icon or image to correct height based on
  145.                   screen resolution.  Object type must be ICON or IMAGE,
  146.                   and can have any flags.
  147.  BOXFRAME (21)  - This specifies a box with a boxframe in the upper left,
  148.                   center, or right of the top of a box with a header.  It
  149.                   can be boxed by setting OBFLAGS14.  Must be BUTTON or
  150.                   BOXTEXT, with no set flags.
  151.  ENHANCED (23)  - An object that has a hotkey.  Can be any type.
  152.  
  153.  -------------------------------------------------------------------------
  154.  
  155.  New Level Compliant Proposal:
  156.  """""""""""""""""""""""""""""
  157.  Hey, when you design compliants, you're always gonna have someone who
  158.  disagrees with some part of it.
  159.  
  160.  Why not, instead of having "G1" or "G2" proposals for document editing
  161.  programs, which is EXACTLY what that they were designed for, why not
  162.  have this:
  163.  
  164.  <For document viewers and editors>
  165.  DG1 - GEM List Level 1 Compliant : Follows keyboard shortcut guide
  166.  DG2 - GEM List Level 2 Compliant : As above, supporting conf file as well
  167.  
  168.  <For GEM libraries and GEM dialog replacement programs>
  169.  GG1 - GEM List Level 3 Compliant : Follows editing guide and clipbd. above
  170.  GG2 - GEM List Level 4 Compliant : As above, with EObTs and sliders
  171.  
  172.  -------------------------------------------------------------------------
  173.  
  174.  More in the second list.  Any objections to these so far?
  175.  
  176. -- Ken (Bitgate Software)
  177.